package com.wxy.ej.flow.utils;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Maps;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.util.EntityUtils;

import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * 接口请求示例为：http://open.api.tianyancha.com/services/open/ic/baseinfo/normal?keyword=中航重机股份有限公司
 */
public class TiaoYanCha {

    /**
     * 主函数
     * @param args
     */
    public static void main(String[] args) throws UnsupportedEncodingException {

        // token可以从 数据中心 -> 我的接口 中获取
        String token = "97ee5400-ad41-4f56-aa72-8ad7e0852a02";
        // String url = "http://open.api.tianyancha.com/services/open/ic/baseinfo/normal?keyword=镇江林泰电气有限公司";
        // System.out.println(executeGet(url, token));

        List<String> nameList = new ArrayList<>();
        /*nameList.add("衡水市冀城汽车零部件厂（普通合伙）");
        nameList.add("镇江林泰电气有限公司");
        nameList.add("江阴市嘉润机械配件有限公司");
        nameList.add("江苏常滤智造科技有限公司");
        nameList.add("杭州康达工具有限公司");
        nameList.add("江苏中捷精工科技股份有限公司");
        nameList.add("宁波山迪光能技术有限公司");
        nameList.add("赛兹(常州)塑料传动器件有限公司");
        nameList.add("曼德电子电器有限公司保定热系统分公司");
        nameList.add("斑马网络技术有限公司");
        nameList.add("苏州萨克汽车科技有限公司");*/
        // nameList.add("南京欧格节能材料有限公司");//???
        nameList.add("南京欧格节能环保科技有限公司");
        /*nameList.add("安徽恒浩汽车零部件有限公司");
        nameList.add("福赛汽车零配件（嘉兴）有限公司");
        nameList.add("无锡市宏宇汽车配件制造有限公司");
        nameList.add("苏州市烨赫精密冲压有限公司");
        nameList.add("南京东宇汽车零部件有限公司");
        nameList.add("爱信（中国）投资有限公司");
        nameList.add("北京德尔福万源发动机管理系统有限公司");
        nameList.add("南京天成自控汽车系统有限公司");
        nameList.add("南京美均电子科技有限公司");
        nameList.add("苏州易航远智智能科技有限公司");*/

        for(String name:nameList) {
            String url = "http://open.api.tianyancha.com/services/open/ic/baseinfo/normal?keyword="+name;
            String result = executeGet(url, token);
            System.out.println(result);
            JSONObject jo = JSONObject.parseObject(result).getJSONObject("result");
            System.out.println("-------------------------");
            System.out.println(jo.getString("name"));
            System.out.println("经营状态："+jo.getString("regStatus"));
            System.out.println("实缴资本: "+jo.getString("actualCapital"));
            System.out.println("注册资本:"+jo.getString("regCapital"));
            System.out.println("员工人数:"+jo.getString("staffNumRange"));
            System.out.println("");
        }
        /*String ss = "{\"result\":{\"historyNames\":\"句容县宝华汽车附件厂;句容市宝华汽车附件厂;镇江林泰汽车附件有限公司;\",\"cancelDate\":null,\"regStatus\":\"存续\",\"regCapital\":\"1500万人民币\",\"city\":\"镇江市\",\"compForm\":null,\"staffNumRange\":\"小于50人\",\"bondNum\":null,\"historyNameList\":[\"句容县宝华汽车附件厂\",\"句容市宝华汽车附件厂\",\"镇江林泰汽车附件有限公司\"],\"industry\":\"批发业\",\"bondName\":null,\"revokeDate\":null,\"type\":1,\"updateTimes\":1654496987000,\"legalPersonName\":\"徐林\",\"revokeReason\":null,\"regNumber\":\"321183000039740\",\"creditCode\":\"913211831416753350\",\"property3\":\"Zhenjiang Lintai Automobile Accessories Co.,Ltd.'\",\"usedBondName\":null,\"approvedTime\":1632672000000,\"fromTime\":459446400000,\"socialStaffNum\":32,\"actualCapitalCurrency\":\"人民币\",\"alias\":\"林泰电气\",\"companyOrgType\":\"有限责任公司(自然人投资或控股)\",\"id\":2329793538,\"cancelReason\":null,\"orgNumber\":\"141675335\",\"toTime\":2352816000000,\"actualCapital\":\"1460万人民币\",\"estiblishTime\":459446400000,\"regInstitute\":\"句容市行政审批局\",\"businessScope\":\"电力电子元器件、新能源电子零部件的技术研发、技术转让；电力电子元器件、电线、电子线束、汽车零部件及配件、家用电力器具的设计、开发、制造、销售；普通货物道路运输。（依法须经批准的项目，经相关部门批准后方可开展经营活动）许可项目：货物进出口；技术进出口（依法须经批准的项目，经相关部门批准后方可开展经营活动，具体经营项目以审批结果为准）\",\"taxNumber\":\"913211831416753350\",\"regLocation\":\"句容市宝华镇先锋村石榴园\",\"regCapitalCurrency\":\"人民币\",\"tags\":\"存续;曾用名;高新技术企业;小微企业\",\"district\":\"句容市\",\"bondType\":null,\"name\":\"镇江林泰电气有限公司\",\"percentileScore\":7506,\"industryAll\":{\"categoryMiddle\":\"机械设备、五金产品及电子产品批发\",\"categoryBig\":\"批发业\",\"category\":\"批发和零售业\",\"categorySmall\":\"电力电子元器件制造\"},\"isMicroEnt\":1,\"base\":\"js\"},\"reason\":\"ok\",\"error_code\":0}\n";
        JSONObject jo = JSONObject.parseObject(ss).getJSONObject("result");
        System.out.println(jo.getString("name"));
        System.out.println(jo.getString("actualCapital"));
        System.out.println(jo.getString("regCapital"));*/
    }

    /**
     * http get请求
     * @param url 接口url
     * @param token token
     * @return  返回接口数据
     */
    protected static String executeGet(String url, String token) {
        BasicHttpParams httpParams = new BasicHttpParams();
        HttpConnectionParams.setConnectionTimeout(httpParams, 1000);
        HttpConnectionParams.setSoTimeout(httpParams, 1000);
        HttpClient httpClient = new DefaultHttpClient(httpParams);
        String result = null;
        try {

            HttpGet get = new HttpGet(url);
            // 设置header
            get.setHeader("Authorization",token);
            // 设置类型
            HttpResponse response = httpClient.execute(get);
            HttpEntity entity = response.getEntity();
            result = EntityUtils.toString(entity, "utf-8");

        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            httpClient.getConnectionManager().shutdown();
        }
        return result;
    }

}
